package org.zjkoye.crm.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.v3.oas.annotations.media.Schema;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * <p>
 * 
 * </p>
 *
 * @author zjkoye
 * @since 2024-06-23
 */
@Schema(name = "Customer", description = "")
public class Customer implements Serializable {

    private static final long serialVersionUID = 1L;

    public Customer() {
        this.customerId = null;
        this.customerName = "";
        this.oldName = "";
        this.address = "";
        this.location = "";
        this.contact = "";
        this.phone1 = "";
        this.phone2 = "";
        this.accountManager = "";
        this.accountManagerPhone = "";
        this.businessManager = "";
        this.createdAt = null;
        this.updatedAt = null;
        this.status = "";
        this.operator = "";
    }

    @TableId(value = "customer_id", type = IdType.AUTO)
    private Integer customerId;

    private String customerName;

    private String oldName;

    private String address;

    private String location;

    private String contact;

    private String phone1;

    private String phone2;

    private String accountManager;

    private String accountManagerPhone;

    private String businessManager;

    private LocalDateTime createdAt;

    private LocalDateTime updatedAt;

    private String status;

    private String operator;

    private String regionName;

    public void setRegionName(String regionName) {this.regionName = regionName;}

    public String getRegionName() {return regionName;}

    public Integer getCustomerId() {
        return customerId;
    }

    public void setCustomerId(Integer customerId) {
        this.customerId = customerId;
    }

    public String getCustomerName() {
        return customerName;
    }

    public void setCustomerName(String customerName) {
        this.customerName = customerName;
    }

    public String getOldName() {
        return oldName;
    }

    public void setOldName(String oldName) {
        this.oldName = oldName;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getLocation() {
        return location;
    }

    public void setLocation(String location) {
        this.location = location;
    }

    public String getContact() {
        return contact;
    }

    public void setContact(String contact) {
        this.contact = contact;
    }

    public String getPhone1() {
        return phone1;
    }

    public void setPhone1(String phone1) {
        this.phone1 = phone1;
    }

    public String getPhone2() {
        return phone2;
    }

    public void setPhone2(String phone2) {
        this.phone2 = phone2;
    }

    public String getAccountManager() {
        return accountManager;
    }

    public void setAccountManager(String accountManager) {
        this.accountManager = accountManager;
    }

    public String getAccountManagerPhone() {
        return accountManagerPhone;
    }

    public void setAccountManagerPhone(String accountManagerPhone) {
        this.accountManagerPhone = accountManagerPhone;
    }

    public String getBusinessManager() {
        return businessManager;
    }

    public void setBusinessManager(String businessManager) {
        this.businessManager = businessManager;
    }

    public LocalDateTime getCreatedAt() {
        return createdAt;
    }

    public void setCreatedAt(LocalDateTime createdAt) {
        this.createdAt = createdAt;
    }

    public LocalDateTime getUpdatedAt() {
        return updatedAt;
    }

    public void setUpdatedAt(LocalDateTime updatedAt) {
        this.updatedAt = updatedAt;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getOperator() {
        return operator;
    }

    public void setOperator(String operator) {
        this.operator = operator;
    }

    @Override
    public String toString() {
        return "Customer{" +
            "customerId = " + customerId +
            ", customerName = " + customerName +
            ", oldName = " + oldName +
            ", address = " + address +
            ", location = " + location +
            ", contact = " + contact +
            ", phone1 = " + phone1 +
            ", phone2 = " + phone2 +
            ", accountManager = " + accountManager +
            ", accountManagerPhone = " + accountManagerPhone +
            ", businessManager = " + businessManager +
            ", createdAt = " + createdAt +
            ", updatedAt = " + updatedAt +
            ", status = " + status +
            ", operator = " + operator +
        "}";
    }
}
